package cn.s1995.sloth.bizs.service;

import cn.s1995.sloth.bizs.entity.Order;
import cn.s1995.sloth.bizs.oo.req.ChartREQ;
import cn.s1995.sloth.bizs.oo.vo.ChartVO;
import cn.s1995.sloth.bizs.oo.vo.DashboardOrderStateVO;
import cn.s1995.sloth.bizs.oo.vo.DashboardStatisticsVO;

import java.util.List;

public interface DashboardService {

	/**
	 * 获取统计数据
	 * @return
	 */
	DashboardStatisticsVO getStatistics();


	/**
	 * 获取最新订单
	 * @param limit
	 * @return
	 */
	List<Order> getLatestOrders(Long limit);

	/**
	 * 获取订单状态
	 * @return
	 */
	DashboardOrderStateVO getStateOrders(ChartREQ req);

	/**
	 * 获取排行榜
	 *
	 * @param type
	 * @param limit
	 * @return
	 */
	List getRankingList(Integer type, Long limit);

	/**
	 * 获取图表数据
	 * @param req
	 * @return
	 */
	List<ChartVO> getChart(ChartREQ req);

}
